With serial data transmission, it is often necessary to make a compromise between the parameters of speed, interference immunity and current consumption. The highest data throughput at a given clock frequency is achieved by synchronous transmission using separate data, clock and control lines. However, such synchronous transmission is particularly susceptible to interference, and it has only conditional suitability for the use of data protection mechanisms for recognizing multiple errors.
Other methods, such as synchronous transmission with clock recovery, or asynchronous transmission, are significantly slower at the same clock frequency. The reason for this is the necessary transmission of additional information for synchronization and the multiple sampling required. The transmission rate can be increased by the proportionally rising current consumption only to a limited extent.
An object of the present invention is to provide a communications interface for the serial transmission of digital data and a serial data transmission method for the transmission of digital data on a bit by bit basis, each of which can be used to achieve serial transmission which is immune to interference and has the speed advantages of synchronous transmission and reliable synchronization between the clock and the data.
Conventionally the transmission path is designed by shielding or limiting the length, to be so reliable that recognition of individual errors is sufficient to ensure transmission with adequate interference immunity. In this case, the start and end of data transmission are synchronized using start/stop synchronization via the control line. Bit synchronization is monitored by counting the clock pulses between start and stop. The data itself is protected by means of a parity bit.
In the case of synchronous transmission with clock recovery, the useful information is coded such that the resultant bit stream contains an adequate number of edge changes (Manchester coding, bit stuffing, 4B/5B etc.), which can be used to recover the send clock signal (bit synchronization). Start/stop synchronization is carried out using special bit sequences which do not occur in the rest of the telegram (BOF, EOF). The disadvantage of this is the relatively large volume of data to be transmitted as a result of coding (factor 1.25 . . . 2). In this context, the additional start and end identifier is of particular concern with small volumes of useful data.
With asynchronous transmission, bit synchronization is carried out using a start and stop bit. However, synchronization is assured only during a limited number of bit times, so that this sequence has to be repeated regularly. Start/stop synchronization of a telegram is carried out, as it is for synchronous transmission with clock recovery, with an explicit start and end identifier. The disadvantage here, too, is the relatively large volume of data to be transmitted. In addition, with asynchronous transmission, multiple sampling is necessary, which either reduces the data rate or increases current consumption.
The present invention solves the problem in that the information elements to be transmitted, the data, the clock signal and the start and end of data transmission (start/stop), are converted into special state sequences in the transmitter in accordance with a defined coding specification, and are transformed back from these state sequences into the information elements again in the receiver. To this end, a communications interface for the serial transmission of digital data is provided, in which at least three signal lines are provided which can each have a xe2x80x9chighxe2x80x9d or a xe2x80x9clowxe2x80x9d level impressed on them, and a data item, which is to be transmitted, can be coded by changing the level of two of the at least three signal lines (Tx0, Tx1, Tx2), and hence as a result of the transition from a first level n-tuple to a second level n-tuple.
In the case of exactly three signal lines (Tx0, Tx1, Tx2), the data item to be transmitted can be coded as a result of the transition from a first level triplet to a second level triplet. Since the communications interface can also be used to transmit synchronization information, for example, the term xe2x80x9cdata itemxe2x80x9d additionally at least includes such information as well.
The permissible transitions from a first level n-tuple or first level triplet to a second level n-tuple or second level triplet are defined in a coding scheme and can be stored in this form in the communication subscribers, which can be communicatively connected via the communications interface. The coding schemes in the receiver can therefore also be used, in particular, for error recognition and suppression.
This makes it possible to carry out a serial data transmission method for the bitwise transmission of digital data on a bit by bit basis using at least three signal lines which can each have a xe2x80x9chighxe2x80x9d or a xe2x80x9clowxe2x80x9d level impressed on them, a data bit which is to be transmitted being coded by changing the level of two of the at least three signal lines (Tx0, Tx1, Tx2), and hence as a result of the transition from a first level triplet to a second level triplet.
In this case, data transmission is particularly immune to interference if the data bit which is to be transmitted is coded by a change in the level of two of the at least three signal lines.
If the change in the level of the at least two signal lines occurs contradirectionally, susceptibility to interference is reduced even further.
If the start and end of data transmission can be coded by inverting the respective levels of the at least three signal lines, start/stop synchronization with only one bit time is possible, so that, with short telegrams, a high data throughput is possible.